#pragma once

#include "Scene.hpp"

class PointLightComponent : public LightComponent
{
public:
	static void CalcBoundingBoxFromRange(common::BOX &outBox, float range);

	PointLightComponent();
	virtual void UpdateObjectBoundingBox();
};

// Spot light always points in the direction of positive Z axis.
class SpotLightComponent : public LightComponent
{
public:
	float HalfAngleInner, HalfAngleOuter;
	float AngleFalloffExponent;

	SpotLightComponent();
	virtual void UpdateObjectBoundingBox();
	virtual bool IsVisible();
};
